#pragma once

#include "../QBase.h"

QNamespaceStart(Qui)

struct QSize_t
{
	qsize_t x;
	qsize_t y;
	qsize_t width;
	qsize_t height;
};
struct QGeomtery_t
{
	qsize_t x1;
	qsize_t y1;
	qsize_t x2;
	qsize_t y2;
};

class QSize
{
	private:
		qsize_t width;
		qsize_t height;

		qsize_t x;
		qsize_t y;

	public:
		QSize() { width = height = x = y = 0; }
		QSize(QSize_t size_t) { width = size_t.width; height = size_t.height; x = size_t.x; y = size_t.y; }

		qsize_t get_x();
		qsize_t get_y();
		qsize_t get_width();
		qsize_t get_height();

		qsize_t set_x(qsize_t new_x);
		qsize_t set_y(qsize_t new_y);
		qsize_t set_width(qsize_t new_width);
		qsize_t set_height(qsize_t new_height);

		void    set_size(QSize_t* size)
		{
			set_x(size->x);
			set_y(size->y);
			set_width(size->width);
			set_height(size->height);
		}

		QSize_t get_size();
};

QGeomtery_t QSize2QGemotery(QSize_t size_t);

QNamespaceEnd